package myWebApp;

import java.util.ArrayList;
import java.util.List;

/* JVM第二章
 * 方法区内存溢出:多线程
 * jdk1.6和jdk1.7的方法区可以使用参数-XX:PermSize 和-XX:MaxPermSize指定大小
 * jdk1.8的方法区改名为元数据区，可以使用参数-XX:MaxMetaspaceSzie大小
 * jvm参数:-XX:MaxMetaspaceSize=5M
 * 2017年8月3日11:43:40
 */
public class ByteTest4 {
	
	public static void main(String[] args) {
		/*保持引用,放置GC回收*/
		List<String> list = new ArrayList<String>();
		int i = 0;
		while(true){
			list.add(new String(String.valueOf(i+1)));
		}
	}

}
/*错误信息：
 Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
	at java.util.Arrays.copyOf(Arrays.java:3210)
	at java.util.Arrays.copyOf(Arrays.java:3181)
	at java.util.ArrayList.grow(ArrayList.java:261)
	at java.util.ArrayList.ensureExplicitCapacity(ArrayList.java:235)
	at java.util.ArrayList.ensureCapacityInternal(ArrayList.java:227)
	at java.util.ArrayList.add(ArrayList.java:458)
	at myWebApp.ByteTest4.main(ByteTest4.java:19)
 */
